class MusicPlayer {
  var playlist: List[String] = Nil     // 音乐列表
  var currentSong: String = ""         // 当前播放的音乐
  var playMode: String = "loop"        // 播放模式，默认为循环播放

  def addSong(song: String): Unit = {
    playlist = playlist :+ song       // 添加音乐到播放列表
  }

  def removeSong(song: String): Unit = {
    playlist = playlist.filter(_ != song)  // 从播放列表中删除指定音乐
  }

  def play(): Unit = {
    currentSong = playlist.headOption.getOrElse("") // 播放列表中的第一首音乐
  }

// 定义一个音乐类Music，包含属性有歌名、歌手、时长等
class Music(val title: String, val artist: String, val duration: Int) {
  // 重写toString方法，方便打印
  override def toString: String = s"$title - $artist ($duration seconds)"
}

// 定义一个音乐播放器类MusicPlayer，包含属性有音乐列表、当前播放的音乐、播放模式等
class MusicPlayer {
  // 使用ListBuffer来存储音乐列表，方便添加和删除
  import scala.collection.mutable.ListBuffer
  private val musicList = ListBuffer[Music]()
  // 使用Option来表示当前播放的音乐，如果没有则为None
  private var currentMusic: Option[Music] = None
  // 使用枚举类来表示播放模式，有顺序、随机和循环三种
  object PlayMode extends Enumeration {
    type PlayMode = Value
    val Sequential, Random, Loop = Value
  }
  import PlayMode._
  // 默认的播放模式为顺序
  private var playMode: PlayMode = Sequential

  // 定义一个添加音乐的方法，接受一个或多个Music对象作为参数，并添加到音乐列表中
  def addMusic(musics: Music*): Unit = {
    musicList ++= musics
